package com.ciaojian.worker.meituan.response;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 验券接口响应结果
 *
 * @author Atlakyn
 */
public class ConsumeResponse extends BaseResponse {
    /**
     * 订单id
     */
    @JsonProperty("order_id")
    private String orderId;

    /**
     * 验证券码
     */
    private String receipt_code;

    /**
     * 第三方的店铺id，不提倡使用，app_shop_id和open_shop_uuid二选一，必须填写一个
     */
    private String app_shop_id;

    /**
     * 美团点评店铺id，建议使用，app_shop_id和open_shop_uuid二选一，必须填写一个
     */
    private String open_shop_uuid;

    /**
     * 套餐id（若验证的券所对应的商品为团购时，该字段必返回）
     */
    private Long deal_id;

    /**
     * 团购id,团购id与套餐id是一对多的关系（若验证的券所对应的商品为团购时，该字段必返回）
     */
    private Long dealgroup_id;

    /**
     * 商品id（若验证的券所对应的商品非团购时，该字段必返回，product_item_id含义参考商品管理API）
     */
    private Long product_item_id;

    /**
     * 商品类型 1、泛商品如丽人派样活动商品等（若验证的券所对应的商品非团购时，该字段必返回）
     */
    private Integer product_type;

    /**
     * 商品名称
     */
    private String deal_title;

    /**
     * 商品售卖价格
     */
    private BigDecimal deal_price;

    /**
     * 商品市场价
     */
    private BigDecimal deal_marketprice;

    /**
     * 业务类型
     * 0:普通团购
     * 205:次卡
     */
    private Integer biz_type;

    /**
     * 该券码所在的订单的支付明细，如果一笔订单包含两个券码a、b，在核销a、b券码时返回信息一致，都是该订单的支付明细
     */
    private String payment_detail;

    /**
     * 券过期时间
     */
    private Date receiptEndDate;

    /**
     * 用户手机号，形如：185****1212
     */
    private String mobile;

    public String getOrder_id() {
        return orderId;
    }

    public void setOrder_id(String order_id) {
        this.orderId = order_id;
    }

    public String getReceipt_code() {
        return receipt_code;
    }

    public void setReceipt_code(String receipt_code) {
        this.receipt_code = receipt_code;
    }

    public String getApp_shop_id() {
        return app_shop_id;
    }

    public void setApp_shop_id(String app_shop_id) {
        this.app_shop_id = app_shop_id;
    }

    public String getOpen_shop_uuid() {
        return open_shop_uuid;
    }

    public void setOpen_shop_uuid(String open_shop_uuid) {
        this.open_shop_uuid = open_shop_uuid;
    }

    public Long getDeal_id() {
        return deal_id;
    }

    public void setDeal_id(Long deal_id) {
        this.deal_id = deal_id;
    }

    public Long getDealgroup_id() {
        return dealgroup_id;
    }

    public void setDealgroup_id(Long dealgroup_id) {
        this.dealgroup_id = dealgroup_id;
    }

    public Long getProduct_item_id() {
        return product_item_id;
    }

    public void setProduct_item_id(Long product_item_id) {
        this.product_item_id = product_item_id;
    }

    public Integer getProduct_type() {
        return product_type;
    }

    public void setProduct_type(Integer product_type) {
        this.product_type = product_type;
    }

    public String getDeal_title() {
        return deal_title;
    }

    public void setDeal_title(String deal_title) {
        this.deal_title = deal_title;
    }

    public BigDecimal getDeal_price() {
        return deal_price;
    }

    public void setDeal_price(BigDecimal deal_price) {
        this.deal_price = deal_price;
    }

    public BigDecimal getDeal_marketprice() {
        return deal_marketprice;
    }

    public void setDeal_marketprice(BigDecimal deal_marketprice) {
        this.deal_marketprice = deal_marketprice;
    }

    public Integer getBiz_type() {
        return biz_type;
    }

    public void setBiz_type(Integer biz_type) {
        this.biz_type = biz_type;
    }

    public String getPayment_detail() {
        return payment_detail;
    }

    public void setPayment_detail(String payment_detail) {
        this.payment_detail = payment_detail;
    }

    public Date getReceiptEndDate() {
        return receiptEndDate;
    }

    public void setReceiptEndDate(Date receiptEndDate) {
        this.receiptEndDate = receiptEndDate;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }
}
